// pipe函数跟compose函数的作用是一样的，也是将参数平铺，只不过他的顺序是从左往右。
const pipe = (...fns) => args => fns.reduce((a, b) => b(a), args)

// Test
function splitString (str) {
    return str.split(' ')
}

function count (array) {
    return array.length
}

// 使用 pipe 之前：
console.log(count(splitString('hello word'))) // 2
// 使用 pipe 之后：
console.log(pipe(splitString, count)('hello word')) // 2
